/**
 * Copyright &copy; 2012-2017 <a href="https://vivo.com">vivo</a> All rights reserved.
 */
package com.vivo.fx.retail.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import javax.validation.constraints.NotNull;
import com.thinkgem.jeesite.common.utils.excel.annotation.ExcelField;

import com.thinkgem.jeesite.common.persistence.DataEntity;

/**
 * 采购入库单Entity
 * @author jyangye
 * @version 2018-01-16
 */
public class FxDeaWarehousingorder extends DataEntity<FxDeaWarehousingorder> {
	
	private static final long serialVersionUID = 1L;
	private String warehousingorderid;		// warehousingorderid
	private String userid;		// userid
	private String purchaseorderid;		// purchaseorderid
	private String ordercode;		// ordercode
	private Date orderdate;		// orderdate
	private String warehousingtype;		// warehousingtype
	private Integer purchasedealerid;		// purchasedealerid
	private Integer purchasedealerrelationid;		// purchasedealerrelationid
	private Integer purchasewarehouseid;		// purchasewarehouseid
	private Integer supplierwarehouseid;		// supplierwarehouseid
	private String handleremployeeid;		// handleremployeeid
	private String checkeremployeeid;		// checkeremployeeid
	private String checkstate;		// checkstate
	private Date checkdate;		// checkdate
	private Date makedate;		// makedate
	private String thisverifystate;		// thisverifystate
	private Date checkpasseddate;		// checkpasseddate
	private Integer warescount;		// warescount
	private String orderstate;		// orderstate
	private String remark;		// remark
	private String allotagentcode;		// allotagentcode
	private String factoryallotordercode;		// factoryallotordercode
	private String isupedfactory;		// isupedfactory
	private Date updateflag;		// updateflag
	private Integer supplierdealerrelationid;		// supplierdealerrelationid
	private Integer supplierdealerid;		// supplierdealerid
	private String storepurchaseorderid;		// storepurchaseorderid
	private String agentcode;		// agentcode
	private Date beginMakedate;		// 开始 makedate
	private Date endMakedate;		// 结束 makedate
	
	public FxDeaWarehousingorder() {
		super();
	}

	public FxDeaWarehousingorder(String id){
		super(id);
	}

	@Length(min=1, max=32, message="warehousingorderid长度必须介于 1 和 32 之间")
	@ExcelField(title="warehousingorderid", align=2, sort=10)
	public String getWarehousingorderid() {
		return warehousingorderid;
	}

	public void setWarehousingorderid(String warehousingorderid) {
		this.warehousingorderid = warehousingorderid;
	}
	
	@Length(min=1, max=32, message="userid长度必须介于 1 和 32 之间")
	@ExcelField(title="userid", align=2, sort=20)
	public String getUserid() {
		return userid;
	}

	public void setUserid(String userid) {
		this.userid = userid;
	}
	
	@Length(min=0, max=32, message="purchaseorderid长度必须介于 0 和 32 之间")
	@ExcelField(title="purchaseorderid", align=2, sort=30)
	public String getPurchaseorderid() {
		return purchaseorderid;
	}

	public void setPurchaseorderid(String purchaseorderid) {
		this.purchaseorderid = purchaseorderid;
	}
	
	@Length(min=1, max=30, message="ordercode长度必须介于 1 和 30 之间")
	@ExcelField(title="ordercode", align=2, sort=40)
	public String getOrdercode() {
		return ordercode;
	}

	public void setOrdercode(String ordercode) {
		this.ordercode = ordercode;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@NotNull(message="orderdate不能为空")
	@ExcelField(title="orderdate", align=2, sort=50)
	public Date getOrderdate() {
		return orderdate;
	}

	public void setOrderdate(Date orderdate) {
		this.orderdate = orderdate;
	}
	
	@Length(min=1, max=1, message="warehousingtype长度必须介于 1 和 1 之间")
	@ExcelField(title="warehousingtype", align=2, sort=60)
	public String getWarehousingtype() {
		return warehousingtype;
	}

	public void setWarehousingtype(String warehousingtype) {
		this.warehousingtype = warehousingtype;
	}
	
	@ExcelField(title="purchasedealerid", align=2, sort=70)
	public Integer getPurchasedealerid() {
		return purchasedealerid;
	}

	public void setPurchasedealerid(Integer purchasedealerid) {
		this.purchasedealerid = purchasedealerid;
	}
	
	@ExcelField(title="purchasedealerrelationid", align=2, sort=80)
	public Integer getPurchasedealerrelationid() {
		return purchasedealerrelationid;
	}

	public void setPurchasedealerrelationid(Integer purchasedealerrelationid) {
		this.purchasedealerrelationid = purchasedealerrelationid;
	}
	
	@ExcelField(title="purchasewarehouseid", align=2, sort=90)
	public Integer getPurchasewarehouseid() {
		return purchasewarehouseid;
	}

	public void setPurchasewarehouseid(Integer purchasewarehouseid) {
		this.purchasewarehouseid = purchasewarehouseid;
	}
	
	@ExcelField(title="supplierwarehouseid", align=2, sort=100)
	public Integer getSupplierwarehouseid() {
		return supplierwarehouseid;
	}

	public void setSupplierwarehouseid(Integer supplierwarehouseid) {
		this.supplierwarehouseid = supplierwarehouseid;
	}
	
	@Length(min=0, max=32, message="handleremployeeid长度必须介于 0 和 32 之间")
	@ExcelField(title="handleremployeeid", align=2, sort=110)
	public String getHandleremployeeid() {
		return handleremployeeid;
	}

	public void setHandleremployeeid(String handleremployeeid) {
		this.handleremployeeid = handleremployeeid;
	}
	
	@Length(min=0, max=32, message="checkeremployeeid长度必须介于 0 和 32 之间")
	@ExcelField(title="checkeremployeeid", align=2, sort=120)
	public String getCheckeremployeeid() {
		return checkeremployeeid;
	}

	public void setCheckeremployeeid(String checkeremployeeid) {
		this.checkeremployeeid = checkeremployeeid;
	}
	
	@Length(min=0, max=1, message="checkstate长度必须介于 0 和 1 之间")
	@ExcelField(title="checkstate", align=2, sort=130)
	public String getCheckstate() {
		return checkstate;
	}

	public void setCheckstate(String checkstate) {
		this.checkstate = checkstate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="checkdate", align=2, sort=140)
	public Date getCheckdate() {
		return checkdate;
	}

	public void setCheckdate(Date checkdate) {
		this.checkdate = checkdate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@NotNull(message="makedate不能为空")
	@ExcelField(title="makedate", align=2, sort=150)
	public Date getMakedate() {
		return makedate;
	}

	public void setMakedate(Date makedate) {
		this.makedate = makedate;
	}
	
	@Length(min=1, max=1, message="thisverifystate长度必须介于 1 和 1 之间")
	@ExcelField(title="thisverifystate", align=2, sort=160)
	public String getThisverifystate() {
		return thisverifystate;
	}

	public void setThisverifystate(String thisverifystate) {
		this.thisverifystate = thisverifystate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="checkpasseddate", align=2, sort=170)
	public Date getCheckpasseddate() {
		return checkpasseddate;
	}

	public void setCheckpasseddate(Date checkpasseddate) {
		this.checkpasseddate = checkpasseddate;
	}
	
	@ExcelField(title="warescount", align=2, sort=180)
	public Integer getWarescount() {
		return warescount;
	}

	public void setWarescount(Integer warescount) {
		this.warescount = warescount;
	}
	
	@Length(min=0, max=1, message="orderstate长度必须介于 0 和 1 之间")
	@ExcelField(title="orderstate", align=2, sort=190)
	public String getOrderstate() {
		return orderstate;
	}

	public void setOrderstate(String orderstate) {
		this.orderstate = orderstate;
	}
	
	@Length(min=0, max=500, message="remark长度必须介于 0 和 500 之间")
	@ExcelField(title="remark", align=2, sort=200)
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	@Length(min=0, max=20, message="allotagentcode长度必须介于 0 和 20 之间")
	@ExcelField(title="allotagentcode", align=2, sort=210)
	public String getAllotagentcode() {
		return allotagentcode;
	}

	public void setAllotagentcode(String allotagentcode) {
		this.allotagentcode = allotagentcode;
	}
	
	@Length(min=0, max=50, message="factoryallotordercode长度必须介于 0 和 50 之间")
	@ExcelField(title="factoryallotordercode", align=2, sort=220)
	public String getFactoryallotordercode() {
		return factoryallotordercode;
	}

	public void setFactoryallotordercode(String factoryallotordercode) {
		this.factoryallotordercode = factoryallotordercode;
	}
	
	@Length(min=0, max=1, message="isupedfactory长度必须介于 0 和 1 之间")
	@ExcelField(title="isupedfactory", align=2, sort=230)
	public String getIsupedfactory() {
		return isupedfactory;
	}

	public void setIsupedfactory(String isupedfactory) {
		this.isupedfactory = isupedfactory;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@NotNull(message="updateflag不能为空")
	@ExcelField(title="updateflag", align=2, sort=240)
	public Date getUpdateflag() {
		return updateflag;
	}

	public void setUpdateflag(Date updateflag) {
		this.updateflag = updateflag;
	}
	
	@ExcelField(title="supplierdealerrelationid", align=2, sort=250)
	public Integer getSupplierdealerrelationid() {
		return supplierdealerrelationid;
	}

	public void setSupplierdealerrelationid(Integer supplierdealerrelationid) {
		this.supplierdealerrelationid = supplierdealerrelationid;
	}
	
	@ExcelField(title="supplierdealerid", align=2, sort=260)
	public Integer getSupplierdealerid() {
		return supplierdealerid;
	}

	public void setSupplierdealerid(Integer supplierdealerid) {
		this.supplierdealerid = supplierdealerid;
	}
	
	@Length(min=0, max=32, message="storepurchaseorderid长度必须介于 0 和 32 之间")
	@ExcelField(title="storepurchaseorderid", align=2, sort=270)
	public String getStorepurchaseorderid() {
		return storepurchaseorderid;
	}

	public void setStorepurchaseorderid(String storepurchaseorderid) {
		this.storepurchaseorderid = storepurchaseorderid;
	}
	
	@Length(min=0, max=10, message="agentcode长度必须介于 0 和 10 之间")
	@ExcelField(title="agentcode", align=2, sort=280)
	public String getAgentcode() {
		return agentcode;
	}

	public void setAgentcode(String agentcode) {
		this.agentcode = agentcode;
	}
	
	public Date getBeginMakedate() {
		return beginMakedate;
	}

	public void setBeginMakedate(Date beginMakedate) {
		this.beginMakedate = beginMakedate;
	}
	
	public Date getEndMakedate() {
		return endMakedate;
	}

	public void setEndMakedate(Date endMakedate) {
		this.endMakedate = endMakedate;
	}
		
}